package condominios.negocio;

import java.util.Collection;




import condominios.excepcion.LoginExcepcion;
import condominios.dao.PersonaDAO;
import condominios.excepcion.DAOExcepcion;
import condominios.modelo.Persona;


public class GestionPersonas {
	
	public Collection<Persona> buscarPorNombreDNI(String nombre) throws DAOExcepcion {
		PersonaDAO dao = new PersonaDAO();
		return dao.buscarPorNombreDNI(nombre);
	}
	
	public Collection<Persona> buscarTodos() throws DAOExcepcion {
		PersonaDAO dao = new PersonaDAO();
		return dao.obtenerTodos();
	}

	public Persona insertar(String nombre, String paterno, String materno, String dni, String email, int perfil, String clave)
			throws DAOExcepcion {
		Persona vo = new Persona();
		vo.setNombres(nombre);
		vo.setApellidoPaterno(paterno);
		vo.setApellidoMaterno(materno);
		vo.setDni(dni);
		vo.setEmail(email);
		vo.setIdPerfil(perfil);
		vo.setContrasenia(clave);

		PersonaDAO dao = new PersonaDAO();
		return dao.insertar(vo);
	}
	
	public void actualizar(String nombre, String paterno, String materno, String dni, String email, int perfil, int idPersona)
			throws DAOExcepcion {
		PersonaDAO dao = new PersonaDAO();

		Persona vo = new Persona();
		vo.setNombres(nombre);
		vo.setApellidoPaterno(paterno);
		vo.setApellidoMaterno(materno);
		vo.setDni(dni);
		vo.setEmail(email);
		vo.setIdPerfil(perfil);
		vo.setIdPersona(idPersona);

		dao.actualizar(vo);

	}
	
	public void eliminar(int nuPersona) throws DAOExcepcion {
		PersonaDAO dao = new PersonaDAO();

		dao.eliminar(nuPersona);
	}
	
	public Persona validarUsuario(String numDocumento, String clave)
			throws DAOExcepcion, LoginExcepcion {
		PersonaDAO dao = new PersonaDAO();
		return dao.validarUsuario(numDocumento, clave);
	}
	
	public Persona obtener(String nuDoc) throws DAOExcepcion {
		PersonaDAO dao = new PersonaDAO();

		return dao.obtenerPornumDoc(nuDoc);

	}

}

